﻿namespace SLClient.ServiceAPI
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Runtime.Serialization;
    using System.Threading;

    [DebuggerStepThrough, DataContract(Name="ViwUserPlayInfo", Namespace="http://www.slclient.com"), GeneratedCode("System.Runtime.Serialization", "4.0.0.0")]
    public class ViwUserPlayInfo : INotifyPropertyChanged
    {
        private int? BetAmountField;
        private decimal? BetTotleField;
        private string ContentNumberField;
        private decimal? DanBeiMoneyField;
        private decimal? FiandianField;
        private decimal? JiangJinField;
        private string LotteryCatagoryNameField;
        private string OpenNumsField;
        private int OrderIdField;
        private DateTime OrderTimeField;
        private bool OrizationField;
        private string PlayNameField;
        private int PlayTypeInfoIdField;
        private decimal? ProfitField;
        private PropertyChangedEventHandler _PropertyChanged;
        private string QiHaoField;
        private string StatusField;
        private string UserAccountField;
        private Guid UserIdField;
        private int? WinCountField;
        private decimal ZjBonusField;

        public event PropertyChangedEventHandler PropertyChanged
        {
            add
            {
                PropertyChangedEventHandler handler2;
                PropertyChangedEventHandler propertyChanged = this._PropertyChanged;
                do
                {
                    handler2 = propertyChanged;
                    PropertyChangedEventHandler handler3 = (PropertyChangedEventHandler) Delegate.Combine(handler2, value);
                    propertyChanged = Interlocked.CompareExchange<PropertyChangedEventHandler>(ref this._PropertyChanged, handler3, handler2);
                }
                while (propertyChanged != handler2);
            }
            remove
            {
                PropertyChangedEventHandler handler2;
                PropertyChangedEventHandler propertyChanged = this._PropertyChanged;
                do
                {
                    handler2 = propertyChanged;
                    PropertyChangedEventHandler handler3 = (PropertyChangedEventHandler) Delegate.Remove(handler2, value);
                    propertyChanged = Interlocked.CompareExchange<PropertyChangedEventHandler>(ref this._PropertyChanged, handler3, handler2);
                }
                while (propertyChanged != handler2);
            }
        }

        protected void RaisePropertyChanged(string propertyName)
        {
            PropertyChangedEventHandler propertyChanged = this._PropertyChanged;
            if (propertyChanged != null)
            {
                propertyChanged(this, new PropertyChangedEventArgs(propertyName));
            }
        }

        [DataMember]
        public int? BetAmount
        {
            get
            {
                return this.BetAmountField;
            }
            set
            {
                if (!this.BetAmountField.Equals(value))
                {
                    this.BetAmountField = value;
                    this.RaisePropertyChanged("BetAmount");
                }
            }
        }

        [DataMember]
        public decimal? BetTotle
        {
            get
            {
                return this.BetTotleField;
            }
            set
            {
                if (!this.BetTotleField.Equals(value))
                {
                    this.BetTotleField = value;
                    this.RaisePropertyChanged("BetTotle");
                }
            }
        }

        [DataMember]
        public string ContentNumber
        {
            get
            {
                return this.ContentNumberField;
            }
            set
            {
                if (!object.ReferenceEquals(this.ContentNumberField, value))
                {
                    this.ContentNumberField = value;
                    this.RaisePropertyChanged("ContentNumber");
                }
            }
        }

        [DataMember]
        public decimal? DanBeiMoney
        {
            get
            {
                return this.DanBeiMoneyField;
            }
            set
            {
                if (!this.DanBeiMoneyField.Equals(value))
                {
                    this.DanBeiMoneyField = value;
                    this.RaisePropertyChanged("DanBeiMoney");
                }
            }
        }

        [DataMember]
        public decimal? Fiandian
        {
            get
            {
                return this.FiandianField;
            }
            set
            {
                if (!this.FiandianField.Equals(value))
                {
                    this.FiandianField = value;
                    this.RaisePropertyChanged("Fiandian");
                }
            }
        }

        [DataMember]
        public decimal? JiangJin
        {
            get
            {
                return this.JiangJinField;
            }
            set
            {
                if (!this.JiangJinField.Equals(value))
                {
                    this.JiangJinField = value;
                    this.RaisePropertyChanged("JiangJin");
                }
            }
        }

        [DataMember]
        public string LotteryCatagoryName
        {
            get
            {
                return this.LotteryCatagoryNameField;
            }
            set
            {
                if (!object.ReferenceEquals(this.LotteryCatagoryNameField, value))
                {
                    this.LotteryCatagoryNameField = value;
                    this.RaisePropertyChanged("LotteryCatagoryName");
                }
            }
        }

        [DataMember]
        public string OpenNums
        {
            get
            {
                return this.OpenNumsField;
            }
            set
            {
                if (!object.ReferenceEquals(this.OpenNumsField, value))
                {
                    this.OpenNumsField = value;
                    this.RaisePropertyChanged("OpenNums");
                }
            }
        }

        [DataMember]
        public int OrderId
        {
            get
            {
                return this.OrderIdField;
            }
            set
            {
                if (!this.OrderIdField.Equals(value))
                {
                    this.OrderIdField = value;
                    this.RaisePropertyChanged("OrderId");
                }
            }
        }

        [DataMember]
        public DateTime OrderTime
        {
            get
            {
                return this.OrderTimeField;
            }
            set
            {
                if (!this.OrderTimeField.Equals(value))
                {
                    this.OrderTimeField = value;
                    this.RaisePropertyChanged("OrderTime");
                }
            }
        }

        [DataMember]
        public bool Orization
        {
            get
            {
                return this.OrizationField;
            }
            set
            {
                if (!this.OrizationField.Equals(value))
                {
                    this.OrizationField = value;
                    this.RaisePropertyChanged("Orization");
                }
            }
        }

        [DataMember]
        public string PlayName
        {
            get
            {
                return this.PlayNameField;
            }
            set
            {
                if (!object.ReferenceEquals(this.PlayNameField, value))
                {
                    this.PlayNameField = value;
                    this.RaisePropertyChanged("PlayName");
                }
            }
        }

        [DataMember]
        public int PlayTypeInfoId
        {
            get
            {
                return this.PlayTypeInfoIdField;
            }
            set
            {
                if (!this.PlayTypeInfoIdField.Equals(value))
                {
                    this.PlayTypeInfoIdField = value;
                    this.RaisePropertyChanged("PlayTypeInfoId");
                }
            }
        }

        [DataMember]
        public decimal? Profit
        {
            get
            {
                return this.ProfitField;
            }
            set
            {
                if (!this.ProfitField.Equals(value))
                {
                    this.ProfitField = value;
                    this.RaisePropertyChanged("Profit");
                }
            }
        }

        [DataMember]
        public string QiHao
        {
            get
            {
                return this.QiHaoField;
            }
            set
            {
                if (!object.ReferenceEquals(this.QiHaoField, value))
                {
                    this.QiHaoField = value;
                    this.RaisePropertyChanged("QiHao");
                }
            }
        }

        [DataMember]
        public string Status
        {
            get
            {
                return this.StatusField;
            }
            set
            {
                if (!object.ReferenceEquals(this.StatusField, value))
                {
                    this.StatusField = value;
                    this.RaisePropertyChanged("Status");
                }
            }
        }

        [DataMember]
        public string UserAccount
        {
            get
            {
                return this.UserAccountField;
            }
            set
            {
                if (!object.ReferenceEquals(this.UserAccountField, value))
                {
                    this.UserAccountField = value;
                    this.RaisePropertyChanged("UserAccount");
                }
            }
        }

        [DataMember]
        public Guid UserId
        {
            get
            {
                return this.UserIdField;
            }
            set
            {
                if (!this.UserIdField.Equals(value))
                {
                    this.UserIdField = value;
                    this.RaisePropertyChanged("UserId");
                }
            }
        }

        [DataMember]
        public int? WinCount
        {
            get
            {
                return this.WinCountField;
            }
            set
            {
                if (!this.WinCountField.Equals(value))
                {
                    this.WinCountField = value;
                    this.RaisePropertyChanged("WinCount");
                }
            }
        }

        [DataMember]
        public decimal ZjBonus
        {
            get
            {
                return this.ZjBonusField;
            }
            set
            {
                if (!this.ZjBonusField.Equals(value))
                {
                    this.ZjBonusField = value;
                    this.RaisePropertyChanged("ZjBonus");
                }
            }
        }
    }
}

